查看原文
其他

Python数据分析之简书粉丝敌我差距

2017-11-22 罗罗攀 Python爱好者社区

作者:罗罗攀  

Python爱好者社区专栏作者   Python爬虫爱好者

博客地址:http://www.jianshu.com/u/9104ebf5e177


最近粉丝涨的飞快,已突破3500大关,虽然比起大咖来说,是微乎其微,但看过我简书风云榜的都知道,3500粉丝也能排上前200名(虽然只爬取了20多万的数据)。


但随着粉丝的增长,也担心粉丝的质量问题,我发现许多粉丝都是没有发表任何文字的,我把这些用户定义为非活跃用户(这样太过偏激),今天就已作者本人的粉丝和向右奔跑前辈的粉丝做比较,看下敌我差距~


爬虫分析及代码


简书的原因,这里只能爬取粉丝的前100页,一页就是9个粉丝,总共只能爬取900个粉丝,爬取的字段也是很简单:


  • 粉丝id

  • 关注量

  • 粉丝量

  • 文章数(这里我把没写过文章的定义为非活跃用户)

import requests from lxml import etree import pymongo client = pymongo.MongoClient('localhost', 27017) jianshu = client['jianshu'] luopan = jianshu['luopan'] xiangyou = jianshu['xiangyou'] urls = ['http://www.jianshu.com/users/54b5900965ea/followers?page={}'.format(str(i)) for i in range(1,101)] for url in urls:    html = requests.get(url)    selector = etree.HTML(html.text)    infos = selector.xpath('//ul[@class="user-list"]/li')    if len(infos) > 0:        for info in infos:            id = info.xpath('div/a/text()')[0]            topic = info.xpath('div/div[1]/span[1]/text()')[0].strip('关注 ')            fans = info.xpath('div/div[1]/span[2]/text()')[0].strip('粉丝 ')            article = info.xpath('div/div[1]/span[3]/text()')[0].strip('文章 ')            content = {                'id':id,                'topic':topic,                'fans':fans,                'article':article            }            # print(id,topic,fans,article)            xiangyou.insert_one(content)    else:        break


敌我差距


此部分通过python数据分析及pyecharts库可视化。


  • 首先看看粉丝的质量:



向右奔跑前辈的粉丝质量明显比我高很多,也会和一些大咖互粉,什么时候大咖也和我互粉呢~由于只能爬取前900个粉丝,差异会扩大很多倍。


  • 看看活跃粉丝差异



这个差距不是很大,这也是简书一直来的问题,大量用户都是不写文章的,简书就是让我们简单的书写我们的人生,大家也可以多写写文章啦,无论是学习,生活,工作,总有你的精彩~

Python爱好者社区历史文章大合集

Python爱好者社区历史文章列表(每周append更新一次)

福利:文末扫码立刻关注公众号,“Python爱好者社区”,开始学习Python课程:

关注后在公众号内回复“课程”即可获取:

0.小编的Python入门视频课程!!!

1.崔老师爬虫实战案例免费学习视频。

2.丘老师数据科学入门指导免费学习视频。

3.陈老师数据分析报告制作免费学习视频。

4.玩转大数据分析!Spark2.X+Python 精华实战课程免费学习视频。

5.丘老师Python网络爬虫实战免费学习视频。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存